package cs348a.data;

/**
 * Contains data for sites.
 * 
 * @author H.S. Kim
 */
public class Site {
	public float x;
	public float y;
	public float z;
	public int index = -1;
	public boolean isOnCurve = true;
	
	/**
	 * Constructor
	 * 
	 * @param x
	 * @param y
	 * @param z
	 * @param i
	 * @param on
	 */
	public Site(float x, float y, float z, int i, boolean on) {
		this.x = x;
		this.y = y;
		this.z = z;
		this.index = i;
		isOnCurve = on;
	}
	
	/**
	 * Constructor
	 * 
	 * @param x
	 * @param y
	 * @param z
	 * @param i
	 */
	public Site(float x, float y, float z, int i) {
		this(x, y, z, i, true);
	}
	
	@Override
	public String toString(){
		return new String(index + " (" + x + ", " + y + ", " + z + ")");
	}
	
	/**
	 * Returns the point.
	 * 
	 * @return
	 */
	public float[] getPoint() {
		return new float[]{x, y, z};
	}
}
